// 引入用户的pinia仓库对象
import { useUserInfoStore } from "@/stores/userInfo";
import type { App } from "vue";

// 自定义指令
export default (app: App) => {
  app.directive("has", {
    //加载完毕后的声明周期
    mounted(el, binding) {
      // el    使用该指令的组件标签
      //binding.value  是使用该指令的时候传入的字符串标识数据
      const userInfoStore = useUserInfoStore();
      // 判断当前的这个用信息中的按钮标识数据有没有传入进来的  字符串标识数据
      if (!userInfoStore.authBtnList.includes(binding.value)) {
        // 自己销毁自己
        el.parentNode.removeChild(el);
      }
    },
  });
};
